import greenfoot.*;

/**
 * Representa la clase Boton,
 * la cual se usa para crear
 * los botones de jugar, creditos
 * y ayuda.
 * 
 * @author Carlos Bretherton.
 * @version 01 de Mayo del 2012
 */
public class Boton extends Mensajes
{
    private GreenfootSound opcion;
    protected GreenfootSound click;
    
    /**
     * Constructor de los objetos
     * de la clase Boton, el cual se 
     * cargan dos archivos de sonido
     * para cuando se hacen click sobre
     * ellos.
     * @param tipo Define el tipo de Boton.
     */
    public Boton(int tipo)
    {
        super(tipo,0);
        opcion = new GreenfootSound("opcion.wav");
        click = new GreenfootSound("click.wav");
    }

    /**
     * Actua de los objetos de la clase Boton, 
     * verifica si se arrastro el mouse sobre 
     * el objeto variando entre dos imagenes 
     * del objeto.
     */
    public void act() 
    {
        super.act();
        if(Greenfoot.mouseMoved(null))
        {
            MouseInfo mouse = Greenfoot.getMouseInfo();
            if(this == mouse.getActor())
            {
                setImage(img2);
                if(ban == false)
                {
                    opcion.play();
                    ban = true;
                }
            }
            else
            {
                setImage(img1);
                if(opcion.isPlaying())
                {
                    opcion.stop();
                }
                ban = false;
            }
        }
    }
}
